import request from '@/utils/request'

// 用印管理 VO
export interface SealManagerVO {
  id: number
  applicantId?: number        // 申请人id, 示例值: 14854
  applicationDate?: string    // 申请日期
  documentTitle?: string      // 文件标题
  userName?: string          // 申请人
  applicantName?: string          // 申请人

  deptId?: number            // 申请部门id
  deptName?: string          // 申请部门
  userId?: number            // 申请人id
  sealId?: any             // 印章ID, 示例值: 21023
  remark?: string             // 备注, 示例值: "随便"
  applicationDept?: string    // 申请部门
  reason?: string             // 事由, 示例值: "不对"
  fileName?: string           // 文件名称, 示例值: "芋艿"
  submitDept?: string         // 报送部门
  directorConsulted?: string  // 是否请示主管领导
  deptHeadSignature?: string  // 部门负责人签字
  adminOfficeSignature?: string // 行政办公室签字
  groupChairmanSignature?: string // 集团公司党委书记、董事长签字
  deptType?: number           // 级别类型（0本部 1二级）, 示例值: 1
  processInstanceId?: string  // 流程编号, 示例值: "31317"
  status?: number             // 审批状态, 示例值: 2
  startUserSelectAssignees?: any // 发起人自选审批人 Map, 示例值: {taskKey1: [1, 2]}
  isApproved?: boolean         // 是否审批通过
}


// 用印管理分页 VO
export interface SealManagerPageVO {
  pageNo: number                     // 页码，从 1 开始，示例值(1)
  pageSize: number                   // 每页条数，最大值为 100，示例值(10)
  applicantId?: string               // 申请人id，示例值(14854)
  applicantName?: string             // 申请人姓名，示例值(申请人姓名)
  applicationDept?: string           // 申请部门
  applicationDate?: string           // 申请日期
  documentTitle?: string             // 文件标题
  reason?: string                    // 事由
  fileName?: string                  // 文件名称
  submitDept?: string                // 报送部门，示例值(报送部门)
  directorConsulted?: string         // 是否请求主管领导
  deptHeadSignature?: string         // 部门负责人签字
  adminOfficeSignature?: string      // 行政办公室签字
  groupChairmanSignature?: string    // 集团公司党委书记、董事长签字
  deptType?: string                  // 级别类型（0本部 1二级），示例值(1)
  processInstanceId?: string         // 流程编号，示例值(31317)
  status?: string                    // 审批状态，示例值(2)
  sealId?: string                    // 印章ID，示例值(21023)
  sealName?: string                  // 印章名称，示例值(张三)
  remark?: string                    // 备注，示例值(随便)
  creator?: string                   // 创建人
  createTime?: string                // 创建时间
  isApproved?: boolean                // 是否审批通过
}

// 用印管理 API
export const SealManagerApi = {

  // 获得用印申请分页
  getSealManagerPage: async (params: SealManagerPageVO) => {
    return await request.get({ url: `/bpm/seal-application/page`, params })
  },

  // 创建用印申请
  createSealManager: async (data: SealManagerVO) => {
    return await request.post({ url: `/bpm/seal-application/create`, data })
  },

  // 修改用印申请
  updateSealManager: async (data: SealManagerVO) => {
    return await request.put({ url: `/bpm/seal-application/update`, data })
  },

  // 删除用印申请
  deleteSealManager: async (id: number) => {
    return await request.delete({ url: `/bpm/seal-application/delete?id=` + id })
  },

  // 获得用印申请详情
  getSealManager: async (id: number) => {
    return await request.get({ url: `/bpm/seal-application/get?id=` + id })
  },

  // 导出用印申请 Excel
  exportSealManager: async (params:any) => {
    return await request.download({ url: `/bpm/seal-application/export-excel`, params })
  },

  // 获取印章列表,用来下拉选择,传递給sealId
  getSealList: async (params: any) => {
    return await request.get({ url: `/system/seal-electronic/page`, params })
  },
}
